\subsection{Identificarse como cliente}

\begin{description}
  \item[Actor:] cliente
  \item[Precondición:] El cliente no está identificado en la web.
  \item[Descripción:] El cliente se identifica en la web haciendo click
  en el botón «Identificarse» o bien se le invita a hacerlo antes de finalizar
  una compra.
\end{description}

\subsubsection{Escenario normal 1: el cliente pulsa el botón «Identificarse»}

\begin{enumerate}
  \item El cliente pincha en el botón para identificarse de la página web.
  \item La página web solicita el usuario y contraseña al cliente.
  \item La página web entrega al controlador el usuario y contraseña del cliente.
  \item La página web comprueba que los datos son correctos (ej: la contraseña
  tiene el mínimo de carácteres, ha rellenado ambos campos, ...).
  \item El controlador pide al agente que compruebe si existe el cliente.
  \item El agente confirma la existencia del cliente al controlador.
  \item El controlador confirma la existencia del cliente a la página web.
  \item La página web confirma al cliente que ya está identificado.
\end{enumerate}

\begin{description}
  \item[Postcondición:] El cliente se encuentra identificado en la web.
\end{description}

\subsubsection{Escenario normal 2: el cliente se identifica después de
terminar una compra como usuario anónimo}

\begin{enumerate}
  \item La página web solicita el usuario y contraseña al cliente al
  confirmar una compra.
\end{enumerate}

El resto de pasos, igual que a partir del paso 3 del escenario normal anterior.

\subsubsection{Escenario alternativo 1: el cliente no introduce sus datos
correctamente (ej: se deja el campo «contraseña» sin rellenar)}

\begin{enumerate}
\setcounter{enumi}{4}
  \item La página web comprueba que los datos son correctos.
  \item La página web informa al cliente de que los datos no son correctos.
\end{enumerate}

Vuelta al paso 2.

\subsubsection{Escenario alternativo 2: el cliente no existe o ha
introducido mal la contraseña (por seguridad, ambos casos se tratan igual)}

\begin{enumerate}
\setcounter{enumi}{5}
  \item El controlador pide al agente que compruebe si existe el cliente.
  \item El agente informa al controlador que el cliente no existe.
  \item El controlador informa a la página web de que el cliente no existe.
  \item La página web muestra un mensaje de error al cliente.
\end{enumerate}

Vuelta al paso 2.
